<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.17"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>IRremoteESP8266: IRGreeAC Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">IRremoteESP8266
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.17 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
  initMenu('',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pub-static-methods">Static Public Member Functions</a> &#124;
<a href="#pri-methods">Private Member Functions</a> &#124;
<a href="#pri-attribs">Private Attributes</a> &#124;
<a href="classIRGreeAC-members.html">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">IRGreeAC Class Reference</div>  </div>
</div><!--header-->
<div class="contents">

<p>Class for handling detailed Gree A/C messages.  
 <a href="classIRGreeAC.html#details">More...</a></p>

<p><code>#include &lt;<a class="el" href="ir__Gree_8h_source.html">ir_Gree.h</a>&gt;</code></p>
<div class="dynheader">
Collaboration diagram for IRGreeAC:</div>
<div class="dyncontent">
<div class="center"><img src="classIRGreeAC__coll__graph.png" border="0" usemap="#IRGreeAC_coll__map" alt="Collaboration graph"/></div>
<map name="IRGreeAC_coll__map" id="IRGreeAC_coll__map">
<area shape="rect" title="Class for handling detailed Gree A/C messages." alt="" coords="5,95,89,121"/>
<area shape="rect" href="classIRsend.html" title="Class for sending all basic IR protocols." alt="" coords="14,5,81,32"/>
</map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:abf7ead6ebee4bc776f83fb55f6fe6b63"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRGreeAC.html#abf7ead6ebee4bc776f83fb55f6fe6b63">IRGreeAC</a> (const uint16_t pin, const <a class="el" href="IRsend_8h.html#af65070c92b97fa00b2de3818c46039c9">gree_ac_remote_model_t</a> model=<a class="el" href="IRsend_8h.html#af65070c92b97fa00b2de3818c46039c9a6b29d752ac8bafc8fedabc1282fccfb6">gree_ac_remote_model_t::YAW1F</a>, const bool inverted=false, const bool use_modulation=true)</td></tr>
<tr class="memdesc:abf7ead6ebee4bc776f83fb55f6fe6b63"><td class="mdescLeft">&#160;</td><td class="mdescRight">Class constructor.  <a href="classIRGreeAC.html#abf7ead6ebee4bc776f83fb55f6fe6b63">More...</a><br /></td></tr>
<tr class="separator:abf7ead6ebee4bc776f83fb55f6fe6b63"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a61356a0dfb4656ac438c3629c591b165"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRGreeAC.html#a61356a0dfb4656ac438c3629c591b165">stateReset</a> (void)</td></tr>
<tr class="memdesc:a61356a0dfb4656ac438c3629c591b165"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reset the internal state to a fixed known good state.  <a href="classIRGreeAC.html#a61356a0dfb4656ac438c3629c591b165">More...</a><br /></td></tr>
<tr class="separator:a61356a0dfb4656ac438c3629c591b165"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9823578040c2d15e2b3e8e3a17a9e220"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRGreeAC.html#a9823578040c2d15e2b3e8e3a17a9e220">send</a> (const uint16_t repeat=<a class="el" href="IRremoteESP8266_8h.html#a6816d2cb11b99a61fb63e6d0928e6706">kGreeDefaultRepeat</a>)</td></tr>
<tr class="memdesc:a9823578040c2d15e2b3e8e3a17a9e220"><td class="mdescLeft">&#160;</td><td class="mdescRight">Send the current internal state as an IR message.  <a href="classIRGreeAC.html#a9823578040c2d15e2b3e8e3a17a9e220">More...</a><br /></td></tr>
<tr class="separator:a9823578040c2d15e2b3e8e3a17a9e220"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8069d00a16ed04fd6fa10d84b364bca7"><td class="memItemLeft" align="right" valign="top">int8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRGreeAC.html#a8069d00a16ed04fd6fa10d84b364bca7">calibrate</a> (void)</td></tr>
<tr class="memdesc:a8069d00a16ed04fd6fa10d84b364bca7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Run the calibration to calculate uSec timing offsets for this platform.  <a href="classIRGreeAC.html#a8069d00a16ed04fd6fa10d84b364bca7">More...</a><br /></td></tr>
<tr class="separator:a8069d00a16ed04fd6fa10d84b364bca7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a44cf8f0e09248741094af4b35321ab1c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRGreeAC.html#a44cf8f0e09248741094af4b35321ab1c">begin</a> (void)</td></tr>
<tr class="memdesc:a44cf8f0e09248741094af4b35321ab1c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set up hardware to be able to send a message.  <a href="classIRGreeAC.html#a44cf8f0e09248741094af4b35321ab1c">More...</a><br /></td></tr>
<tr class="separator:a44cf8f0e09248741094af4b35321ab1c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a69e399e411a19e5669e752d52ae66f15"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRGreeAC.html#a69e399e411a19e5669e752d52ae66f15">on</a> (void)</td></tr>
<tr class="memdesc:a69e399e411a19e5669e752d52ae66f15"><td class="mdescLeft">&#160;</td><td class="mdescRight">Change the power setting to On.  <a href="classIRGreeAC.html#a69e399e411a19e5669e752d52ae66f15">More...</a><br /></td></tr>
<tr class="separator:a69e399e411a19e5669e752d52ae66f15"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4cce897175ed731ab62402133089ed4f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRGreeAC.html#a4cce897175ed731ab62402133089ed4f">off</a> (void)</td></tr>
<tr class="memdesc:a4cce897175ed731ab62402133089ed4f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Change the power setting to Off.  <a href="classIRGreeAC.html#a4cce897175ed731ab62402133089ed4f">More...</a><br /></td></tr>
<tr class="separator:a4cce897175ed731ab62402133089ed4f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1075a08c30a2de97892e0842cb30e451"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRGreeAC.html#a1075a08c30a2de97892e0842cb30e451">setModel</a> (const <a class="el" href="IRsend_8h.html#af65070c92b97fa00b2de3818c46039c9">gree_ac_remote_model_t</a> model)</td></tr>
<tr class="memdesc:a1075a08c30a2de97892e0842cb30e451"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the model of the A/C to emulate.  <a href="classIRGreeAC.html#a1075a08c30a2de97892e0842cb30e451">More...</a><br /></td></tr>
<tr class="separator:a1075a08c30a2de97892e0842cb30e451"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3780fc11488a2b40f3c1a50bb94783c7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="IRsend_8h.html#af65070c92b97fa00b2de3818c46039c9">gree_ac_remote_model_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRGreeAC.html#a3780fc11488a2b40f3c1a50bb94783c7">getModel</a> (void)</td></tr>
<tr class="memdesc:a3780fc11488a2b40f3c1a50bb94783c7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get/Detect the model of the A/C.  <a href="classIRGreeAC.html#a3780fc11488a2b40f3c1a50bb94783c7">More...</a><br /></td></tr>
<tr class="separator:a3780fc11488a2b40f3c1a50bb94783c7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a16b8c6af038752cd2b416cdcf9e2fb51"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRGreeAC.html#a16b8c6af038752cd2b416cdcf9e2fb51">setPower</a> (const bool <a class="el" href="classIRGreeAC.html#a69e399e411a19e5669e752d52ae66f15">on</a>)</td></tr>
<tr class="memdesc:a16b8c6af038752cd2b416cdcf9e2fb51"><td class="mdescLeft">&#160;</td><td class="mdescRight">Change the power setting.  <a href="classIRGreeAC.html#a16b8c6af038752cd2b416cdcf9e2fb51">More...</a><br /></td></tr>
<tr class="separator:a16b8c6af038752cd2b416cdcf9e2fb51"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac2c97551e02c6cce1b9983cc902f5f1a"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRGreeAC.html#ac2c97551e02c6cce1b9983cc902f5f1a">getPower</a> (void)</td></tr>
<tr class="memdesc:ac2c97551e02c6cce1b9983cc902f5f1a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the value of the current power setting.  <a href="classIRGreeAC.html#ac2c97551e02c6cce1b9983cc902f5f1a">More...</a><br /></td></tr>
<tr class="separator:ac2c97551e02c6cce1b9983cc902f5f1a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1890c6d134183beb89b791ec565623bb"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRGreeAC.html#a1890c6d134183beb89b791ec565623bb">setTemp</a> (const uint8_t temp, const bool fahrenheit=false)</td></tr>
<tr class="memdesc:a1890c6d134183beb89b791ec565623bb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the temp. in degrees.  <a href="classIRGreeAC.html#a1890c6d134183beb89b791ec565623bb">More...</a><br /></td></tr>
<tr class="separator:a1890c6d134183beb89b791ec565623bb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3e935c044cdccfb988a97d5fb0c4068b"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRGreeAC.html#a3e935c044cdccfb988a97d5fb0c4068b">getTemp</a> (void)</td></tr>
<tr class="memdesc:a3e935c044cdccfb988a97d5fb0c4068b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the set temperature.  <a href="classIRGreeAC.html#a3e935c044cdccfb988a97d5fb0c4068b">More...</a><br /></td></tr>
<tr class="separator:a3e935c044cdccfb988a97d5fb0c4068b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af559afaa9da5fd27cdb516355da67bd6"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRGreeAC.html#af559afaa9da5fd27cdb516355da67bd6">setUseFahrenheit</a> (const bool <a class="el" href="classIRGreeAC.html#a69e399e411a19e5669e752d52ae66f15">on</a>)</td></tr>
<tr class="memdesc:af559afaa9da5fd27cdb516355da67bd6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the default temperature units to use.  <a href="classIRGreeAC.html#af559afaa9da5fd27cdb516355da67bd6">More...</a><br /></td></tr>
<tr class="separator:af559afaa9da5fd27cdb516355da67bd6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aad6acfb8a697aba851bb34b14bc94ac1"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRGreeAC.html#aad6acfb8a697aba851bb34b14bc94ac1">getUseFahrenheit</a> (void)</td></tr>
<tr class="memdesc:aad6acfb8a697aba851bb34b14bc94ac1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the default temperature units in use.  <a href="classIRGreeAC.html#aad6acfb8a697aba851bb34b14bc94ac1">More...</a><br /></td></tr>
<tr class="separator:aad6acfb8a697aba851bb34b14bc94ac1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9bb570e71df5002298505d49473e6bac"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRGreeAC.html#a9bb570e71df5002298505d49473e6bac">setFan</a> (const uint8_t speed)</td></tr>
<tr class="memdesc:a9bb570e71df5002298505d49473e6bac"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the speed of the fan.  <a href="classIRGreeAC.html#a9bb570e71df5002298505d49473e6bac">More...</a><br /></td></tr>
<tr class="separator:a9bb570e71df5002298505d49473e6bac"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0bf5a552490c7500f0584affacac13d0"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRGreeAC.html#a0bf5a552490c7500f0584affacac13d0">getFan</a> (void)</td></tr>
<tr class="memdesc:a0bf5a552490c7500f0584affacac13d0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the current fan speed setting.  <a href="classIRGreeAC.html#a0bf5a552490c7500f0584affacac13d0">More...</a><br /></td></tr>
<tr class="separator:a0bf5a552490c7500f0584affacac13d0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9d9dbd416e3dc270fcfda620b3bb4fe2"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRGreeAC.html#a9d9dbd416e3dc270fcfda620b3bb4fe2">setMode</a> (const uint8_t new_mode)</td></tr>
<tr class="memdesc:a9d9dbd416e3dc270fcfda620b3bb4fe2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the operating mode of the A/C.  <a href="classIRGreeAC.html#a9d9dbd416e3dc270fcfda620b3bb4fe2">More...</a><br /></td></tr>
<tr class="separator:a9d9dbd416e3dc270fcfda620b3bb4fe2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abb5c4a29000c8b22b25e150e7ef5a6c3"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRGreeAC.html#abb5c4a29000c8b22b25e150e7ef5a6c3">getMode</a> (void)</td></tr>
<tr class="memdesc:abb5c4a29000c8b22b25e150e7ef5a6c3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the operating mode setting of the A/C.  <a href="classIRGreeAC.html#abb5c4a29000c8b22b25e150e7ef5a6c3">More...</a><br /></td></tr>
<tr class="separator:abb5c4a29000c8b22b25e150e7ef5a6c3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a702bbba38e11bb8f3428ee707fc82311"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRGreeAC.html#a702bbba38e11bb8f3428ee707fc82311">setLight</a> (const bool <a class="el" href="classIRGreeAC.html#a69e399e411a19e5669e752d52ae66f15">on</a>)</td></tr>
<tr class="memdesc:a702bbba38e11bb8f3428ee707fc82311"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the Light (LED) setting of the A/C.  <a href="classIRGreeAC.html#a702bbba38e11bb8f3428ee707fc82311">More...</a><br /></td></tr>
<tr class="separator:a702bbba38e11bb8f3428ee707fc82311"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae63281a9caf850429857cc3fa99ccf05"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRGreeAC.html#ae63281a9caf850429857cc3fa99ccf05">getLight</a> (void)</td></tr>
<tr class="memdesc:ae63281a9caf850429857cc3fa99ccf05"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the Light (LED) setting of the A/C.  <a href="classIRGreeAC.html#ae63281a9caf850429857cc3fa99ccf05">More...</a><br /></td></tr>
<tr class="separator:ae63281a9caf850429857cc3fa99ccf05"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af465c607222fa433f54c2ce56ced2474"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRGreeAC.html#af465c607222fa433f54c2ce56ced2474">setXFan</a> (const bool <a class="el" href="classIRGreeAC.html#a69e399e411a19e5669e752d52ae66f15">on</a>)</td></tr>
<tr class="memdesc:af465c607222fa433f54c2ce56ced2474"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the XFan (Mould) setting of the A/C.  <a href="classIRGreeAC.html#af465c607222fa433f54c2ce56ced2474">More...</a><br /></td></tr>
<tr class="separator:af465c607222fa433f54c2ce56ced2474"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acb677dde02be1a3461a7c8bc2406194f"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRGreeAC.html#acb677dde02be1a3461a7c8bc2406194f">getXFan</a> (void)</td></tr>
<tr class="memdesc:acb677dde02be1a3461a7c8bc2406194f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the XFan (Mould) setting of the A/C.  <a href="classIRGreeAC.html#acb677dde02be1a3461a7c8bc2406194f">More...</a><br /></td></tr>
<tr class="separator:acb677dde02be1a3461a7c8bc2406194f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac9c11817d15bc5c82732a901cd95e07c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRGreeAC.html#ac9c11817d15bc5c82732a901cd95e07c">setSleep</a> (const bool <a class="el" href="classIRGreeAC.html#a69e399e411a19e5669e752d52ae66f15">on</a>)</td></tr>
<tr class="memdesc:ac9c11817d15bc5c82732a901cd95e07c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the Sleep setting of the A/C.  <a href="classIRGreeAC.html#ac9c11817d15bc5c82732a901cd95e07c">More...</a><br /></td></tr>
<tr class="separator:ac9c11817d15bc5c82732a901cd95e07c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abd106daa5324a454c5ced13e2fed2a1b"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRGreeAC.html#abd106daa5324a454c5ced13e2fed2a1b">getSleep</a> (void)</td></tr>
<tr class="memdesc:abd106daa5324a454c5ced13e2fed2a1b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the Sleep setting of the A/C.  <a href="classIRGreeAC.html#abd106daa5324a454c5ced13e2fed2a1b">More...</a><br /></td></tr>
<tr class="separator:abd106daa5324a454c5ced13e2fed2a1b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae873023ad81f7dcb12ee5b061e160bea"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRGreeAC.html#ae873023ad81f7dcb12ee5b061e160bea">setTurbo</a> (const bool <a class="el" href="classIRGreeAC.html#a69e399e411a19e5669e752d52ae66f15">on</a>)</td></tr>
<tr class="memdesc:ae873023ad81f7dcb12ee5b061e160bea"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the Turbo setting of the A/C.  <a href="classIRGreeAC.html#ae873023ad81f7dcb12ee5b061e160bea">More...</a><br /></td></tr>
<tr class="separator:ae873023ad81f7dcb12ee5b061e160bea"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6e319c8584d0cb82223fd190fa4bde29"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRGreeAC.html#a6e319c8584d0cb82223fd190fa4bde29">getTurbo</a> (void)</td></tr>
<tr class="memdesc:a6e319c8584d0cb82223fd190fa4bde29"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the Turbo setting of the A/C.  <a href="classIRGreeAC.html#a6e319c8584d0cb82223fd190fa4bde29">More...</a><br /></td></tr>
<tr class="separator:a6e319c8584d0cb82223fd190fa4bde29"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a68a670156a5e0a91a8a3cf9225263e0b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRGreeAC.html#a68a670156a5e0a91a8a3cf9225263e0b">setIFeel</a> (const bool <a class="el" href="classIRGreeAC.html#a69e399e411a19e5669e752d52ae66f15">on</a>)</td></tr>
<tr class="memdesc:a68a670156a5e0a91a8a3cf9225263e0b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the IFeel setting of the A/C.  <a href="classIRGreeAC.html#a68a670156a5e0a91a8a3cf9225263e0b">More...</a><br /></td></tr>
<tr class="separator:a68a670156a5e0a91a8a3cf9225263e0b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae1f8352fc32fa773bb33243cc32657a2"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRGreeAC.html#ae1f8352fc32fa773bb33243cc32657a2">getIFeel</a> (void)</td></tr>
<tr class="memdesc:ae1f8352fc32fa773bb33243cc32657a2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the IFeel setting of the A/C.  <a href="classIRGreeAC.html#ae1f8352fc32fa773bb33243cc32657a2">More...</a><br /></td></tr>
<tr class="separator:ae1f8352fc32fa773bb33243cc32657a2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afde745ceaa97f9608195b2ba9fce6c5c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRGreeAC.html#afde745ceaa97f9608195b2ba9fce6c5c">setWiFi</a> (const bool <a class="el" href="classIRGreeAC.html#a69e399e411a19e5669e752d52ae66f15">on</a>)</td></tr>
<tr class="memdesc:afde745ceaa97f9608195b2ba9fce6c5c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the Wifi (enabled) setting of the A/C.  <a href="classIRGreeAC.html#afde745ceaa97f9608195b2ba9fce6c5c">More...</a><br /></td></tr>
<tr class="separator:afde745ceaa97f9608195b2ba9fce6c5c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a967afbe980bae858ce0e4daea6628c37"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRGreeAC.html#a967afbe980bae858ce0e4daea6628c37">getWiFi</a> (void)</td></tr>
<tr class="memdesc:a967afbe980bae858ce0e4daea6628c37"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the Wifi (enabled) setting of the A/C.  <a href="classIRGreeAC.html#a967afbe980bae858ce0e4daea6628c37">More...</a><br /></td></tr>
<tr class="separator:a967afbe980bae858ce0e4daea6628c37"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1b571dea8a5bf553554e45074f3a01c0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRGreeAC.html#a1b571dea8a5bf553554e45074f3a01c0">setSwingVertical</a> (const bool automatic, const uint8_t position)</td></tr>
<tr class="memdesc:a1b571dea8a5bf553554e45074f3a01c0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the Vertical Swing mode of the A/C.  <a href="classIRGreeAC.html#a1b571dea8a5bf553554e45074f3a01c0">More...</a><br /></td></tr>
<tr class="separator:a1b571dea8a5bf553554e45074f3a01c0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4105bcde953896b12df050b12f1a45cc"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRGreeAC.html#a4105bcde953896b12df050b12f1a45cc">getSwingVerticalAuto</a> (void)</td></tr>
<tr class="memdesc:a4105bcde953896b12df050b12f1a45cc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the Vertical Swing Automatic mode setting of the A/C.  <a href="classIRGreeAC.html#a4105bcde953896b12df050b12f1a45cc">More...</a><br /></td></tr>
<tr class="separator:a4105bcde953896b12df050b12f1a45cc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7b1b840483ef92102dd61fefd52ccd8b"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRGreeAC.html#a7b1b840483ef92102dd61fefd52ccd8b">getSwingVerticalPosition</a> (void)</td></tr>
<tr class="memdesc:a7b1b840483ef92102dd61fefd52ccd8b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the Vertical Swing position setting of the A/C.  <a href="classIRGreeAC.html#a7b1b840483ef92102dd61fefd52ccd8b">More...</a><br /></td></tr>
<tr class="separator:a7b1b840483ef92102dd61fefd52ccd8b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7a56024e2840306e071e03d1fae53ce9"><td class="memItemLeft" align="right" valign="top">uint16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRGreeAC.html#a7a56024e2840306e071e03d1fae53ce9">getTimer</a> (void)</td></tr>
<tr class="memdesc:a7a56024e2840306e071e03d1fae53ce9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the timer time value from the A/C.  <a href="classIRGreeAC.html#a7a56024e2840306e071e03d1fae53ce9">More...</a><br /></td></tr>
<tr class="separator:a7a56024e2840306e071e03d1fae53ce9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a84debd45d2f2ba221f825257e0bc6294"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRGreeAC.html#a84debd45d2f2ba221f825257e0bc6294">setTimer</a> (const uint16_t minutes)</td></tr>
<tr class="memdesc:a84debd45d2f2ba221f825257e0bc6294"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the A/C's timer to turn off in X many minutes.  <a href="classIRGreeAC.html#a84debd45d2f2ba221f825257e0bc6294">More...</a><br /></td></tr>
<tr class="separator:a84debd45d2f2ba221f825257e0bc6294"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1d073c31ea169d0e5cf33c8592982035"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRGreeAC.html#a1d073c31ea169d0e5cf33c8592982035">setDisplayTempSource</a> (const uint8_t mode)</td></tr>
<tr class="memdesc:a1d073c31ea169d0e5cf33c8592982035"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set temperature display mode. i.e. Internal, External temperature sensing.  <a href="classIRGreeAC.html#a1d073c31ea169d0e5cf33c8592982035">More...</a><br /></td></tr>
<tr class="separator:a1d073c31ea169d0e5cf33c8592982035"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adea5a2d2b3a9d699c722e7a93784809e"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRGreeAC.html#adea5a2d2b3a9d699c722e7a93784809e">getDisplayTempSource</a> (void)</td></tr>
<tr class="memdesc:adea5a2d2b3a9d699c722e7a93784809e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the temperature display mode. i.e. Internal, External temperature sensing.  <a href="classIRGreeAC.html#adea5a2d2b3a9d699c722e7a93784809e">More...</a><br /></td></tr>
<tr class="separator:adea5a2d2b3a9d699c722e7a93784809e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a609e87ad4926f150b44426caf79fd38e"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRGreeAC.html#a609e87ad4926f150b44426caf79fd38e">convertMode</a> (const <a class="el" href="namespacestdAc.html#a99ad268c783486f9b3207cb78f48444f">stdAc::opmode_t</a> mode)</td></tr>
<tr class="memdesc:a609e87ad4926f150b44426caf79fd38e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert a <a class="el" href="namespacestdAc.html#a99ad268c783486f9b3207cb78f48444f" title="Common A/C settings for A/C operating modes.">stdAc::opmode_t</a> enum into its native mode.  <a href="classIRGreeAC.html#a609e87ad4926f150b44426caf79fd38e">More...</a><br /></td></tr>
<tr class="separator:a609e87ad4926f150b44426caf79fd38e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a39aa0e4759330aef39382813d3aa96a4"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRGreeAC.html#a39aa0e4759330aef39382813d3aa96a4">convertFan</a> (const <a class="el" href="namespacestdAc.html#a8bb0dbf18fe69f639f4ac0b3ff133383">stdAc::fanspeed_t</a> speed)</td></tr>
<tr class="memdesc:a39aa0e4759330aef39382813d3aa96a4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert a <a class="el" href="namespacestdAc.html#a8bb0dbf18fe69f639f4ac0b3ff133383" title="Common A/C settings for Fan Speeds.">stdAc::fanspeed_t</a> enum into it's native speed.  <a href="classIRGreeAC.html#a39aa0e4759330aef39382813d3aa96a4">More...</a><br /></td></tr>
<tr class="separator:a39aa0e4759330aef39382813d3aa96a4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae3717400d1dc0336bcc5fa17c1397a9b"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRGreeAC.html#ae3717400d1dc0336bcc5fa17c1397a9b">convertSwingV</a> (const <a class="el" href="namespacestdAc.html#ac07f224c7bb47cac55dd01f24770ef43">stdAc::swingv_t</a> swingv)</td></tr>
<tr class="memdesc:ae3717400d1dc0336bcc5fa17c1397a9b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert a <a class="el" href="namespacestdAc.html#ac07f224c7bb47cac55dd01f24770ef43" title="Common A/C settings for Vertical Swing.">stdAc::swingv_t</a> enum into it's native setting.  <a href="classIRGreeAC.html#ae3717400d1dc0336bcc5fa17c1397a9b">More...</a><br /></td></tr>
<tr class="separator:ae3717400d1dc0336bcc5fa17c1397a9b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac28c640aa4b5dd0dbbca42b056f877f7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structstdAc_1_1state__t.html">stdAc::state_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRGreeAC.html#ac28c640aa4b5dd0dbbca42b056f877f7">toCommon</a> (void)</td></tr>
<tr class="memdesc:ac28c640aa4b5dd0dbbca42b056f877f7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert the current internal state into its <a class="el" href="structstdAc_1_1state__t.html" title="Structure to hold a common A/C state.">stdAc::state_t</a> equivilant.  <a href="classIRGreeAC.html#ac28c640aa4b5dd0dbbca42b056f877f7">More...</a><br /></td></tr>
<tr class="separator:ac28c640aa4b5dd0dbbca42b056f877f7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afa1595d4f69200b0076db1b9f8f2ea73"><td class="memItemLeft" align="right" valign="top">uint8_t *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRGreeAC.html#afa1595d4f69200b0076db1b9f8f2ea73">getRaw</a> (void)</td></tr>
<tr class="memdesc:afa1595d4f69200b0076db1b9f8f2ea73"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get a PTR to the internal state/code for this protocol.  <a href="classIRGreeAC.html#afa1595d4f69200b0076db1b9f8f2ea73">More...</a><br /></td></tr>
<tr class="separator:afa1595d4f69200b0076db1b9f8f2ea73"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a588f526f2f5500c7c2933ca91ccaf865"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRGreeAC.html#a588f526f2f5500c7c2933ca91ccaf865">setRaw</a> (const uint8_t new_code[])</td></tr>
<tr class="memdesc:a588f526f2f5500c7c2933ca91ccaf865"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the internal state from a valid code for this protocol.  <a href="classIRGreeAC.html#a588f526f2f5500c7c2933ca91ccaf865">More...</a><br /></td></tr>
<tr class="separator:a588f526f2f5500c7c2933ca91ccaf865"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1f18b275e0e3d10fbc952d1da9613074"><td class="memItemLeft" align="right" valign="top"><a class="el" href="IRremoteESP8266_8h.html#afbeda3fd1bdc8c37d01bdf9f5c8274ff">String</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRGreeAC.html#a1f18b275e0e3d10fbc952d1da9613074">toString</a> (void)</td></tr>
<tr class="memdesc:a1f18b275e0e3d10fbc952d1da9613074"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert the current internal state into a human readable string.  <a href="classIRGreeAC.html#a1f18b275e0e3d10fbc952d1da9613074">More...</a><br /></td></tr>
<tr class="separator:a1f18b275e0e3d10fbc952d1da9613074"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-methods"></a>
Static Public Member Functions</h2></td></tr>
<tr class="memitem:a3f393071163fd1577c772a8515e2b5a9"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="namespacestdAc.html#a99ad268c783486f9b3207cb78f48444f">stdAc::opmode_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRGreeAC.html#a3f393071163fd1577c772a8515e2b5a9">toCommonMode</a> (const uint8_t mode)</td></tr>
<tr class="memdesc:a3f393071163fd1577c772a8515e2b5a9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert a native mode into its <a class="el" href="namespacestdAc.html" title="Enumerators and Structures for the Common A/C API.">stdAc</a> equivilant.  <a href="classIRGreeAC.html#a3f393071163fd1577c772a8515e2b5a9">More...</a><br /></td></tr>
<tr class="separator:a3f393071163fd1577c772a8515e2b5a9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ade6cb54e99b6dab1df708cbf25fc5967"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="namespacestdAc.html#a8bb0dbf18fe69f639f4ac0b3ff133383">stdAc::fanspeed_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRGreeAC.html#ade6cb54e99b6dab1df708cbf25fc5967">toCommonFanSpeed</a> (const uint8_t speed)</td></tr>
<tr class="memdesc:ade6cb54e99b6dab1df708cbf25fc5967"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert a native fan speed into its <a class="el" href="namespacestdAc.html" title="Enumerators and Structures for the Common A/C API.">stdAc</a> equivilant.  <a href="classIRGreeAC.html#ade6cb54e99b6dab1df708cbf25fc5967">More...</a><br /></td></tr>
<tr class="separator:ade6cb54e99b6dab1df708cbf25fc5967"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a537d17801a90e22ad2baba7145b038cb"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="namespacestdAc.html#ac07f224c7bb47cac55dd01f24770ef43">stdAc::swingv_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRGreeAC.html#a537d17801a90e22ad2baba7145b038cb">toCommonSwingV</a> (const uint8_t pos)</td></tr>
<tr class="memdesc:a537d17801a90e22ad2baba7145b038cb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert a <a class="el" href="namespacestdAc.html#ac07f224c7bb47cac55dd01f24770ef43" title="Common A/C settings for Vertical Swing.">stdAc::swingv_t</a> enum into it's native setting.  <a href="classIRGreeAC.html#a537d17801a90e22ad2baba7145b038cb">More...</a><br /></td></tr>
<tr class="separator:a537d17801a90e22ad2baba7145b038cb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a74e7df0634f0a60110db8c033d9d5b1d"><td class="memItemLeft" align="right" valign="top">static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRGreeAC.html#a74e7df0634f0a60110db8c033d9d5b1d">validChecksum</a> (const uint8_t state[], const uint16_t length=<a class="el" href="IRremoteESP8266_8h.html#a5558b24542873d8475e1ee0e2439839f">kGreeStateLength</a>)</td></tr>
<tr class="memdesc:a74e7df0634f0a60110db8c033d9d5b1d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Verify the checksum is valid for a given state.  <a href="classIRGreeAC.html#a74e7df0634f0a60110db8c033d9d5b1d">More...</a><br /></td></tr>
<tr class="separator:a74e7df0634f0a60110db8c033d9d5b1d"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pri-methods"></a>
Private Member Functions</h2></td></tr>
<tr class="memitem:aaa6b2702d79a7a3db454b99d71064679"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRGreeAC.html#aaa6b2702d79a7a3db454b99d71064679">checksum</a> (const uint16_t length=<a class="el" href="IRremoteESP8266_8h.html#a5558b24542873d8475e1ee0e2439839f">kGreeStateLength</a>)</td></tr>
<tr class="memdesc:aaa6b2702d79a7a3db454b99d71064679"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate and set the checksum values for the internal state.  <a href="classIRGreeAC.html#aaa6b2702d79a7a3db454b99d71064679">More...</a><br /></td></tr>
<tr class="separator:aaa6b2702d79a7a3db454b99d71064679"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5bbdcc83f9d49e32379cd27cad0ba130"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRGreeAC.html#a5bbdcc83f9d49e32379cd27cad0ba130">fixup</a> (void)</td></tr>
<tr class="memdesc:a5bbdcc83f9d49e32379cd27cad0ba130"><td class="mdescLeft">&#160;</td><td class="mdescRight">Fix up the internal state so it is correct.  <a href="classIRGreeAC.html#a5bbdcc83f9d49e32379cd27cad0ba130">More...</a><br /></td></tr>
<tr class="separator:a5bbdcc83f9d49e32379cd27cad0ba130"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1002d6dfe409076fa7ef252589d5043c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRGreeAC.html#a1002d6dfe409076fa7ef252589d5043c">setTimerEnabled</a> (const bool <a class="el" href="classIRGreeAC.html#a69e399e411a19e5669e752d52ae66f15">on</a>)</td></tr>
<tr class="memdesc:a1002d6dfe409076fa7ef252589d5043c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the timer enable setting of the A/C.  <a href="classIRGreeAC.html#a1002d6dfe409076fa7ef252589d5043c">More...</a><br /></td></tr>
<tr class="separator:a1002d6dfe409076fa7ef252589d5043c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aeec03eb7f506a0ba62c28469b789b0da"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRGreeAC.html#aeec03eb7f506a0ba62c28469b789b0da">getTimerEnabled</a> (void)</td></tr>
<tr class="memdesc:aeec03eb7f506a0ba62c28469b789b0da"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the timer enabled setting of the A/C.  <a href="classIRGreeAC.html#aeec03eb7f506a0ba62c28469b789b0da">More...</a><br /></td></tr>
<tr class="separator:aeec03eb7f506a0ba62c28469b789b0da"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pri-attribs"></a>
Private Attributes</h2></td></tr>
<tr class="memitem:a36390655badf0ad5b5809499a8634f70"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classIRsend.html">IRsend</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRGreeAC.html#a36390655badf0ad5b5809499a8634f70">_irsend</a></td></tr>
<tr class="memdesc:a36390655badf0ad5b5809499a8634f70"><td class="mdescLeft">&#160;</td><td class="mdescRight">Instance of the IR send class.  <a href="classIRGreeAC.html#a36390655badf0ad5b5809499a8634f70">More...</a><br /></td></tr>
<tr class="separator:a36390655badf0ad5b5809499a8634f70"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9e0cb21278ac3c9a72738ab8e6e09096"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRGreeAC.html#a9e0cb21278ac3c9a72738ab8e6e09096">remote_state</a> [<a class="el" href="IRremoteESP8266_8h.html#a5558b24542873d8475e1ee0e2439839f">kGreeStateLength</a>]</td></tr>
<tr class="memdesc:a9e0cb21278ac3c9a72738ab8e6e09096"><td class="mdescLeft">&#160;</td><td class="mdescRight">The state in native IR code form.  <a href="classIRGreeAC.html#a9e0cb21278ac3c9a72738ab8e6e09096">More...</a><br /></td></tr>
<tr class="separator:a9e0cb21278ac3c9a72738ab8e6e09096"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae357bf1611f349e2686f4f46c2581c47"><td class="memItemLeft" align="right" valign="top"><a class="el" href="IRsend_8h.html#af65070c92b97fa00b2de3818c46039c9">gree_ac_remote_model_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classIRGreeAC.html#ae357bf1611f349e2686f4f46c2581c47">_model</a></td></tr>
<tr class="separator:ae357bf1611f349e2686f4f46c2581c47"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Class for handling detailed Gree A/C messages. </p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="abf7ead6ebee4bc776f83fb55f6fe6b63"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abf7ead6ebee4bc776f83fb55f6fe6b63">&#9670;&nbsp;</a></span>IRGreeAC()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">IRGreeAC::IRGreeAC </td>
          <td>(</td>
          <td class="paramtype">const uint16_t&#160;</td>
          <td class="paramname"><em>pin</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="IRsend_8h.html#af65070c92b97fa00b2de3818c46039c9">gree_ac_remote_model_t</a>&#160;</td>
          <td class="paramname"><em>model</em> = <code><a class="el" href="IRsend_8h.html#af65070c92b97fa00b2de3818c46039c9a6b29d752ac8bafc8fedabc1282fccfb6">gree_ac_remote_model_t::YAW1F</a></code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const bool&#160;</td>
          <td class="paramname"><em>inverted</em> = <code>false</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const bool&#160;</td>
          <td class="paramname"><em>use_modulation</em> = <code>true</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">explicit</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Class constructor. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">pin</td><td>GPIO to be used when sending. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">model</td><td>The enum of the model to be emulated. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">inverted</td><td>Is the output signal to be inverted? </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">use_modulation</td><td>Is frequency modulation to be used? </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="a44cf8f0e09248741094af4b35321ab1c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a44cf8f0e09248741094af4b35321ab1c">&#9670;&nbsp;</a></span>begin()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void IRGreeAC::begin </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Set up hardware to be able to send a message. </p>

</div>
</div>
<a id="a8069d00a16ed04fd6fa10d84b364bca7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8069d00a16ed04fd6fa10d84b364bca7">&#9670;&nbsp;</a></span>calibrate()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">int8_t IRGreeAC::calibrate </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Run the calibration to calculate uSec timing offsets for this platform. </p>
<dl class="section return"><dt>Returns</dt><dd>The uSec timing offset needed per modulation of the IR Led. </dd></dl>
<dl class="section note"><dt>Note</dt><dd>This will produce a 65ms IR signal pulse at 38kHz. Only ever needs to be run once per object instantiation, if at all. </dd></dl>

</div>
</div>
<a id="aaa6b2702d79a7a3db454b99d71064679"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aaa6b2702d79a7a3db454b99d71064679">&#9670;&nbsp;</a></span>checksum()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void IRGreeAC::checksum </td>
          <td>(</td>
          <td class="paramtype">const uint16_t&#160;</td>
          <td class="paramname"><em>length</em> = <code><a class="el" href="IRremoteESP8266_8h.html#a5558b24542873d8475e1ee0e2439839f">kGreeStateLength</a></code></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Calculate and set the checksum values for the internal state. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">length</td><td>The size/length of the state array to fix the checksum of. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a39aa0e4759330aef39382813d3aa96a4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a39aa0e4759330aef39382813d3aa96a4">&#9670;&nbsp;</a></span>convertFan()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">uint8_t IRGreeAC::convertFan </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="namespacestdAc.html#a8bb0dbf18fe69f639f4ac0b3ff133383">stdAc::fanspeed_t</a>&#160;</td>
          <td class="paramname"><em>speed</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Convert a <a class="el" href="namespacestdAc.html#a8bb0dbf18fe69f639f4ac0b3ff133383" title="Common A/C settings for Fan Speeds.">stdAc::fanspeed_t</a> enum into it's native speed. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">speed</td><td>The enum to be converted. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The native equivilant of the enum. </dd></dl>

</div>
</div>
<a id="a609e87ad4926f150b44426caf79fd38e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a609e87ad4926f150b44426caf79fd38e">&#9670;&nbsp;</a></span>convertMode()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">uint8_t IRGreeAC::convertMode </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="namespacestdAc.html#a99ad268c783486f9b3207cb78f48444f">stdAc::opmode_t</a>&#160;</td>
          <td class="paramname"><em>mode</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Convert a <a class="el" href="namespacestdAc.html#a99ad268c783486f9b3207cb78f48444f" title="Common A/C settings for A/C operating modes.">stdAc::opmode_t</a> enum into its native mode. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">mode</td><td>The enum to be converted. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The native equivilant of the enum. </dd></dl>

</div>
</div>
<a id="ae3717400d1dc0336bcc5fa17c1397a9b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae3717400d1dc0336bcc5fa17c1397a9b">&#9670;&nbsp;</a></span>convertSwingV()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">uint8_t IRGreeAC::convertSwingV </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="namespacestdAc.html#ac07f224c7bb47cac55dd01f24770ef43">stdAc::swingv_t</a>&#160;</td>
          <td class="paramname"><em>swingv</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Convert a <a class="el" href="namespacestdAc.html#ac07f224c7bb47cac55dd01f24770ef43" title="Common A/C settings for Vertical Swing.">stdAc::swingv_t</a> enum into it's native setting. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">swingv</td><td>The enum to be converted. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The native equivilant of the enum. </dd></dl>

</div>
</div>
<a id="a5bbdcc83f9d49e32379cd27cad0ba130"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5bbdcc83f9d49e32379cd27cad0ba130">&#9670;&nbsp;</a></span>fixup()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void IRGreeAC::fixup </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Fix up the internal state so it is correct. </p>
<dl class="section note"><dt>Note</dt><dd>Internal use only. </dd></dl>

</div>
</div>
<a id="adea5a2d2b3a9d699c722e7a93784809e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#adea5a2d2b3a9d699c722e7a93784809e">&#9670;&nbsp;</a></span>getDisplayTempSource()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">uint8_t IRGreeAC::getDisplayTempSource </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get the temperature display mode. i.e. Internal, External temperature sensing. </p>
<dl class="section return"><dt>Returns</dt><dd>The current temp source being displayed. </dd></dl>

</div>
</div>
<a id="a0bf5a552490c7500f0584affacac13d0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0bf5a552490c7500f0584affacac13d0">&#9670;&nbsp;</a></span>getFan()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">uint8_t IRGreeAC::getFan </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get the current fan speed setting. </p>
<dl class="section return"><dt>Returns</dt><dd>The current fan speed. </dd></dl>

</div>
</div>
<a id="ae1f8352fc32fa773bb33243cc32657a2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae1f8352fc32fa773bb33243cc32657a2">&#9670;&nbsp;</a></span>getIFeel()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool IRGreeAC::getIFeel </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get the IFeel setting of the A/C. </p>
<dl class="section return"><dt>Returns</dt><dd>true, the setting is on. false, the setting is off. </dd></dl>

</div>
</div>
<a id="ae63281a9caf850429857cc3fa99ccf05"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae63281a9caf850429857cc3fa99ccf05">&#9670;&nbsp;</a></span>getLight()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool IRGreeAC::getLight </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get the Light (LED) setting of the A/C. </p>
<dl class="section return"><dt>Returns</dt><dd>true, the setting is on. false, the setting is off. </dd></dl>

</div>
</div>
<a id="abb5c4a29000c8b22b25e150e7ef5a6c3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abb5c4a29000c8b22b25e150e7ef5a6c3">&#9670;&nbsp;</a></span>getMode()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">uint8_t IRGreeAC::getMode </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get the operating mode setting of the A/C. </p>
<dl class="section return"><dt>Returns</dt><dd>The current operating mode setting. </dd></dl>

</div>
</div>
<a id="a3780fc11488a2b40f3c1a50bb94783c7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3780fc11488a2b40f3c1a50bb94783c7">&#9670;&nbsp;</a></span>getModel()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="IRsend_8h.html#af65070c92b97fa00b2de3818c46039c9">gree_ac_remote_model_t</a> IRGreeAC::getModel </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get/Detect the model of the A/C. </p>
<dl class="section return"><dt>Returns</dt><dd>The enum of the compatible model. </dd></dl>

</div>
</div>
<a id="ac2c97551e02c6cce1b9983cc902f5f1a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac2c97551e02c6cce1b9983cc902f5f1a">&#9670;&nbsp;</a></span>getPower()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool IRGreeAC::getPower </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get the value of the current power setting. </p>
<dl class="section return"><dt>Returns</dt><dd>true, the setting is on. false, the setting is off. </dd></dl>
<dl class="section see"><dt>See also</dt><dd><a href="https://github.com/crankyoldgit/IRremoteESP8266/issues/814">https://github.com/crankyoldgit/IRremoteESP8266/issues/814</a> </dd></dl>

</div>
</div>
<a id="afa1595d4f69200b0076db1b9f8f2ea73"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afa1595d4f69200b0076db1b9f8f2ea73">&#9670;&nbsp;</a></span>getRaw()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">uint8_t * IRGreeAC::getRaw </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get a PTR to the internal state/code for this protocol. </p>
<dl class="section return"><dt>Returns</dt><dd>PTR to a code for this protocol based on the current internal state. </dd></dl>

</div>
</div>
<a id="abd106daa5324a454c5ced13e2fed2a1b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abd106daa5324a454c5ced13e2fed2a1b">&#9670;&nbsp;</a></span>getSleep()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool IRGreeAC::getSleep </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get the Sleep setting of the A/C. </p>
<dl class="section return"><dt>Returns</dt><dd>true, the setting is on. false, the setting is off. </dd></dl>

</div>
</div>
<a id="a4105bcde953896b12df050b12f1a45cc"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4105bcde953896b12df050b12f1a45cc">&#9670;&nbsp;</a></span>getSwingVerticalAuto()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool IRGreeAC::getSwingVerticalAuto </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get the Vertical Swing Automatic mode setting of the A/C. </p>
<dl class="section return"><dt>Returns</dt><dd>true, the setting is on. false, the setting is off. </dd></dl>

</div>
</div>
<a id="a7b1b840483ef92102dd61fefd52ccd8b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7b1b840483ef92102dd61fefd52ccd8b">&#9670;&nbsp;</a></span>getSwingVerticalPosition()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">uint8_t IRGreeAC::getSwingVerticalPosition </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get the Vertical Swing position setting of the A/C. </p>
<dl class="section return"><dt>Returns</dt><dd>The native position/mode. </dd></dl>

</div>
</div>
<a id="a3e935c044cdccfb988a97d5fb0c4068b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3e935c044cdccfb988a97d5fb0c4068b">&#9670;&nbsp;</a></span>getTemp()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">uint8_t IRGreeAC::getTemp </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get the set temperature. </p>
<dl class="section return"><dt>Returns</dt><dd>The temperature in degrees in the current units (C/F) set. </dd></dl>

</div>
</div>
<a id="a7a56024e2840306e071e03d1fae53ce9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7a56024e2840306e071e03d1fae53ce9">&#9670;&nbsp;</a></span>getTimer()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">uint16_t IRGreeAC::getTimer </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get the timer time value from the A/C. </p>
<dl class="section return"><dt>Returns</dt><dd>The number of minutes the timer is set for. </dd></dl>

</div>
</div>
<a id="aeec03eb7f506a0ba62c28469b789b0da"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aeec03eb7f506a0ba62c28469b789b0da">&#9670;&nbsp;</a></span>getTimerEnabled()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool IRGreeAC::getTimerEnabled </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Get the timer enabled setting of the A/C. </p>
<dl class="section return"><dt>Returns</dt><dd>true, the setting is on. false, the setting is off. </dd></dl>

</div>
</div>
<a id="a6e319c8584d0cb82223fd190fa4bde29"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6e319c8584d0cb82223fd190fa4bde29">&#9670;&nbsp;</a></span>getTurbo()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool IRGreeAC::getTurbo </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get the Turbo setting of the A/C. </p>
<dl class="section return"><dt>Returns</dt><dd>true, the setting is on. false, the setting is off. </dd></dl>

</div>
</div>
<a id="aad6acfb8a697aba851bb34b14bc94ac1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aad6acfb8a697aba851bb34b14bc94ac1">&#9670;&nbsp;</a></span>getUseFahrenheit()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool IRGreeAC::getUseFahrenheit </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get the default temperature units in use. </p>
<dl class="section return"><dt>Returns</dt><dd>true is Fahrenheit, false is Celsius. </dd></dl>

</div>
</div>
<a id="a967afbe980bae858ce0e4daea6628c37"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a967afbe980bae858ce0e4daea6628c37">&#9670;&nbsp;</a></span>getWiFi()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool IRGreeAC::getWiFi </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get the Wifi (enabled) setting of the A/C. </p>
<dl class="section return"><dt>Returns</dt><dd>true, the setting is on. false, the setting is off. </dd></dl>

</div>
</div>
<a id="acb677dde02be1a3461a7c8bc2406194f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#acb677dde02be1a3461a7c8bc2406194f">&#9670;&nbsp;</a></span>getXFan()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool IRGreeAC::getXFan </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get the XFan (Mould) setting of the A/C. </p>
<dl class="section return"><dt>Returns</dt><dd>true, the setting is on. false, the setting is off. </dd></dl>

</div>
</div>
<a id="a4cce897175ed731ab62402133089ed4f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4cce897175ed731ab62402133089ed4f">&#9670;&nbsp;</a></span>off()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void IRGreeAC::off </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Change the power setting to Off. </p>

</div>
</div>
<a id="a69e399e411a19e5669e752d52ae66f15"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a69e399e411a19e5669e752d52ae66f15">&#9670;&nbsp;</a></span>on()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void IRGreeAC::on </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Change the power setting to On. </p>

</div>
</div>
<a id="a9823578040c2d15e2b3e8e3a17a9e220"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9823578040c2d15e2b3e8e3a17a9e220">&#9670;&nbsp;</a></span>send()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void IRGreeAC::send </td>
          <td>(</td>
          <td class="paramtype">const uint16_t&#160;</td>
          <td class="paramname"><em>repeat</em> = <code><a class="el" href="IRremoteESP8266_8h.html#a6816d2cb11b99a61fb63e6d0928e6706">kGreeDefaultRepeat</a></code></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Send the current internal state as an IR message. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">repeat</td><td>Nr. of times the message will be repeated. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a1d073c31ea169d0e5cf33c8592982035"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1d073c31ea169d0e5cf33c8592982035">&#9670;&nbsp;</a></span>setDisplayTempSource()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void IRGreeAC::setDisplayTempSource </td>
          <td>(</td>
          <td class="paramtype">const uint8_t&#160;</td>
          <td class="paramname"><em>mode</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Set temperature display mode. i.e. Internal, External temperature sensing. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">mode</td><td>The desired temp source to display. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section note"><dt>Note</dt><dd>In order for the A/C unit properly accept these settings. You must cycle (send) in the following order: kGreeDisplayTempOff(0) -&gt; kGreeDisplayTempSet(1) -&gt; kGreeDisplayTempInside(2) -&gt;kGreeDisplayTempOutside(3) -&gt; kGreeDisplayTempOff(0). The unit will no behave correctly if the changes of this setting are sent out of order. </dd></dl>
<dl class="section see"><dt>See also</dt><dd><a href="https://github.com/crankyoldgit/IRremoteESP8266/issues/1118#issuecomment-628242152">https://github.com/crankyoldgit/IRremoteESP8266/issues/1118#issuecomment-628242152</a> </dd></dl>

</div>
</div>
<a id="a9bb570e71df5002298505d49473e6bac"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9bb570e71df5002298505d49473e6bac">&#9670;&nbsp;</a></span>setFan()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void IRGreeAC::setFan </td>
          <td>(</td>
          <td class="paramtype">const uint8_t&#160;</td>
          <td class="paramname"><em>speed</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Set the speed of the fan. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">speed</td><td>The desired setting. 0 is auto, 1-3 is the speed. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a68a670156a5e0a91a8a3cf9225263e0b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a68a670156a5e0a91a8a3cf9225263e0b">&#9670;&nbsp;</a></span>setIFeel()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void IRGreeAC::setIFeel </td>
          <td>(</td>
          <td class="paramtype">const bool&#160;</td>
          <td class="paramname"><em>on</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Set the IFeel setting of the A/C. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">on</td><td>true, the setting is on. false, the setting is off. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a702bbba38e11bb8f3428ee707fc82311"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a702bbba38e11bb8f3428ee707fc82311">&#9670;&nbsp;</a></span>setLight()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void IRGreeAC::setLight </td>
          <td>(</td>
          <td class="paramtype">const bool&#160;</td>
          <td class="paramname"><em>on</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Set the Light (LED) setting of the A/C. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">on</td><td>true, the setting is on. false, the setting is off. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a9d9dbd416e3dc270fcfda620b3bb4fe2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9d9dbd416e3dc270fcfda620b3bb4fe2">&#9670;&nbsp;</a></span>setMode()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void IRGreeAC::setMode </td>
          <td>(</td>
          <td class="paramtype">const uint8_t&#160;</td>
          <td class="paramname"><em>new_mode</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Set the operating mode of the A/C. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">new_mode</td><td>The desired operating mode. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a1075a08c30a2de97892e0842cb30e451"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1075a08c30a2de97892e0842cb30e451">&#9670;&nbsp;</a></span>setModel()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void IRGreeAC::setModel </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="IRsend_8h.html#af65070c92b97fa00b2de3818c46039c9">gree_ac_remote_model_t</a>&#160;</td>
          <td class="paramname"><em>model</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Set the model of the A/C to emulate. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">model</td><td>The enum of the appropriate model. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a16b8c6af038752cd2b416cdcf9e2fb51"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a16b8c6af038752cd2b416cdcf9e2fb51">&#9670;&nbsp;</a></span>setPower()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void IRGreeAC::setPower </td>
          <td>(</td>
          <td class="paramtype">const bool&#160;</td>
          <td class="paramname"><em>on</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Change the power setting. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">on</td><td>true, the setting is on. false, the setting is off. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section see"><dt>See also</dt><dd><a href="https://github.com/crankyoldgit/IRremoteESP8266/issues/814">https://github.com/crankyoldgit/IRremoteESP8266/issues/814</a> </dd></dl>

</div>
</div>
<a id="a588f526f2f5500c7c2933ca91ccaf865"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a588f526f2f5500c7c2933ca91ccaf865">&#9670;&nbsp;</a></span>setRaw()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void IRGreeAC::setRaw </td>
          <td>(</td>
          <td class="paramtype">const uint8_t&#160;</td>
          <td class="paramname"><em>new_code</em>[]</td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Set the internal state from a valid code for this protocol. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">new_code</td><td>A valid code for this protocol. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="ac9c11817d15bc5c82732a901cd95e07c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac9c11817d15bc5c82732a901cd95e07c">&#9670;&nbsp;</a></span>setSleep()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void IRGreeAC::setSleep </td>
          <td>(</td>
          <td class="paramtype">const bool&#160;</td>
          <td class="paramname"><em>on</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Set the Sleep setting of the A/C. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">on</td><td>true, the setting is on. false, the setting is off. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a1b571dea8a5bf553554e45074f3a01c0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1b571dea8a5bf553554e45074f3a01c0">&#9670;&nbsp;</a></span>setSwingVertical()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void IRGreeAC::setSwingVertical </td>
          <td>(</td>
          <td class="paramtype">const bool&#160;</td>
          <td class="paramname"><em>automatic</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const uint8_t&#160;</td>
          <td class="paramname"><em>position</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Set the Vertical Swing mode of the A/C. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">automatic</td><td>Do we use the automatic setting? </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">position</td><td>The position/mode to set the vanes to. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a1890c6d134183beb89b791ec565623bb"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1890c6d134183beb89b791ec565623bb">&#9670;&nbsp;</a></span>setTemp()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void IRGreeAC::setTemp </td>
          <td>(</td>
          <td class="paramtype">const uint8_t&#160;</td>
          <td class="paramname"><em>temp</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const bool&#160;</td>
          <td class="paramname"><em>fahrenheit</em> = <code>false</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Set the temp. in degrees. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">temp</td><td>Desired temperature in Degrees. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">fahrenheit</td><td>Use units of Fahrenheit and set that as units used. false is Celsius (Default), true is Fahrenheit. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section note"><dt>Note</dt><dd>The unit actually works in Celsius with a special optional "extra degree" when sending Fahrenheit. </dd></dl>

</div>
</div>
<a id="a84debd45d2f2ba221f825257e0bc6294"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a84debd45d2f2ba221f825257e0bc6294">&#9670;&nbsp;</a></span>setTimer()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void IRGreeAC::setTimer </td>
          <td>(</td>
          <td class="paramtype">const uint16_t&#160;</td>
          <td class="paramname"><em>minutes</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Set the A/C's timer to turn off in X many minutes. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">minutes</td><td>The number of minutes the timer should be set for. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section note"><dt>Note</dt><dd>Stores time internally in 30 min units. e.g. 5 mins means 0 (&amp; Off), 95 mins is 90 mins (&amp; On). Max is 24 hours. </dd></dl>

</div>
</div>
<a id="a1002d6dfe409076fa7ef252589d5043c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1002d6dfe409076fa7ef252589d5043c">&#9670;&nbsp;</a></span>setTimerEnabled()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void IRGreeAC::setTimerEnabled </td>
          <td>(</td>
          <td class="paramtype">const bool&#160;</td>
          <td class="paramname"><em>on</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Set the timer enable setting of the A/C. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">on</td><td>true, the setting is on. false, the setting is off. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="ae873023ad81f7dcb12ee5b061e160bea"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae873023ad81f7dcb12ee5b061e160bea">&#9670;&nbsp;</a></span>setTurbo()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void IRGreeAC::setTurbo </td>
          <td>(</td>
          <td class="paramtype">const bool&#160;</td>
          <td class="paramname"><em>on</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Set the Turbo setting of the A/C. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">on</td><td>true, the setting is on. false, the setting is off. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="af559afaa9da5fd27cdb516355da67bd6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af559afaa9da5fd27cdb516355da67bd6">&#9670;&nbsp;</a></span>setUseFahrenheit()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void IRGreeAC::setUseFahrenheit </td>
          <td>(</td>
          <td class="paramtype">const bool&#160;</td>
          <td class="paramname"><em>on</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Set the default temperature units to use. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">on</td><td>Use Fahrenheit as the units. true is Fahrenheit, false is Celsius. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="afde745ceaa97f9608195b2ba9fce6c5c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afde745ceaa97f9608195b2ba9fce6c5c">&#9670;&nbsp;</a></span>setWiFi()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void IRGreeAC::setWiFi </td>
          <td>(</td>
          <td class="paramtype">const bool&#160;</td>
          <td class="paramname"><em>on</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Set the Wifi (enabled) setting of the A/C. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">on</td><td>true, the setting is on. false, the setting is off. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="af465c607222fa433f54c2ce56ced2474"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af465c607222fa433f54c2ce56ced2474">&#9670;&nbsp;</a></span>setXFan()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void IRGreeAC::setXFan </td>
          <td>(</td>
          <td class="paramtype">const bool&#160;</td>
          <td class="paramname"><em>on</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Set the XFan (Mould) setting of the A/C. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">on</td><td>true, the setting is on. false, the setting is off. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a61356a0dfb4656ac438c3629c591b165"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a61356a0dfb4656ac438c3629c591b165">&#9670;&nbsp;</a></span>stateReset()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void IRGreeAC::stateReset </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Reset the internal state to a fixed known good state. </p>

</div>
</div>
<a id="ac28c640aa4b5dd0dbbca42b056f877f7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac28c640aa4b5dd0dbbca42b056f877f7">&#9670;&nbsp;</a></span>toCommon()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structstdAc_1_1state__t.html">stdAc::state_t</a> IRGreeAC::toCommon </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Convert the current internal state into its <a class="el" href="structstdAc_1_1state__t.html" title="Structure to hold a common A/C state.">stdAc::state_t</a> equivilant. </p>
<dl class="section return"><dt>Returns</dt><dd>The <a class="el" href="namespacestdAc.html" title="Enumerators and Structures for the Common A/C API.">stdAc</a> equivilant of the native settings. </dd></dl>

</div>
</div>
<a id="ade6cb54e99b6dab1df708cbf25fc5967"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ade6cb54e99b6dab1df708cbf25fc5967">&#9670;&nbsp;</a></span>toCommonFanSpeed()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="namespacestdAc.html#a8bb0dbf18fe69f639f4ac0b3ff133383">stdAc::fanspeed_t</a> IRGreeAC::toCommonFanSpeed </td>
          <td>(</td>
          <td class="paramtype">const uint8_t&#160;</td>
          <td class="paramname"><em>speed</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Convert a native fan speed into its <a class="el" href="namespacestdAc.html" title="Enumerators and Structures for the Common A/C API.">stdAc</a> equivilant. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">speed</td><td>The native setting to be converted. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The <a class="el" href="namespacestdAc.html" title="Enumerators and Structures for the Common A/C API.">stdAc</a> equivilant of the native setting. </dd></dl>

</div>
</div>
<a id="a3f393071163fd1577c772a8515e2b5a9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3f393071163fd1577c772a8515e2b5a9">&#9670;&nbsp;</a></span>toCommonMode()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="namespacestdAc.html#a99ad268c783486f9b3207cb78f48444f">stdAc::opmode_t</a> IRGreeAC::toCommonMode </td>
          <td>(</td>
          <td class="paramtype">const uint8_t&#160;</td>
          <td class="paramname"><em>mode</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Convert a native mode into its <a class="el" href="namespacestdAc.html" title="Enumerators and Structures for the Common A/C API.">stdAc</a> equivilant. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">mode</td><td>The native setting to be converted. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The <a class="el" href="namespacestdAc.html" title="Enumerators and Structures for the Common A/C API.">stdAc</a> equivilant of the native setting. </dd></dl>

</div>
</div>
<a id="a537d17801a90e22ad2baba7145b038cb"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a537d17801a90e22ad2baba7145b038cb">&#9670;&nbsp;</a></span>toCommonSwingV()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="namespacestdAc.html#ac07f224c7bb47cac55dd01f24770ef43">stdAc::swingv_t</a> IRGreeAC::toCommonSwingV </td>
          <td>(</td>
          <td class="paramtype">const uint8_t&#160;</td>
          <td class="paramname"><em>pos</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Convert a <a class="el" href="namespacestdAc.html#ac07f224c7bb47cac55dd01f24770ef43" title="Common A/C settings for Vertical Swing.">stdAc::swingv_t</a> enum into it's native setting. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">pos</td><td>The enum to be converted. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The native equivilant of the enum. </dd></dl>

</div>
</div>
<a id="a1f18b275e0e3d10fbc952d1da9613074"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1f18b275e0e3d10fbc952d1da9613074">&#9670;&nbsp;</a></span>toString()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="IRremoteESP8266_8h.html#afbeda3fd1bdc8c37d01bdf9f5c8274ff">String</a> IRGreeAC::toString </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Convert the current internal state into a human readable string. </p>
<dl class="section return"><dt>Returns</dt><dd>A human readable string. </dd></dl>

</div>
</div>
<a id="a74e7df0634f0a60110db8c033d9d5b1d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a74e7df0634f0a60110db8c033d9d5b1d">&#9670;&nbsp;</a></span>validChecksum()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool IRGreeAC::validChecksum </td>
          <td>(</td>
          <td class="paramtype">const uint8_t&#160;</td>
          <td class="paramname"><em>state</em>[], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const uint16_t&#160;</td>
          <td class="paramname"><em>length</em> = <code><a class="el" href="IRremoteESP8266_8h.html#a5558b24542873d8475e1ee0e2439839f">kGreeStateLength</a></code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Verify the checksum is valid for a given state. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">state</td><td>The array to verify the checksum of. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">length</td><td>The length of the state array. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>true, if the state has a valid checksum. Otherwise, false. </dd></dl>

</div>
</div>
<h2 class="groupheader">Member Data Documentation</h2>
<a id="a36390655badf0ad5b5809499a8634f70"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a36390655badf0ad5b5809499a8634f70">&#9670;&nbsp;</a></span>_irsend</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classIRsend.html">IRsend</a> IRGreeAC::_irsend</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Instance of the IR send class. </p>

</div>
</div>
<a id="ae357bf1611f349e2686f4f46c2581c47"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae357bf1611f349e2686f4f46c2581c47">&#9670;&nbsp;</a></span>_model</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="IRsend_8h.html#af65070c92b97fa00b2de3818c46039c9">gree_ac_remote_model_t</a> IRGreeAC::_model</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

</div>
</div>
<a id="a9e0cb21278ac3c9a72738ab8e6e09096"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9e0cb21278ac3c9a72738ab8e6e09096">&#9670;&nbsp;</a></span>remote_state</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">uint8_t IRGreeAC::remote_state[<a class="el" href="IRremoteESP8266_8h.html#a5558b24542873d8475e1ee0e2439839f">kGreeStateLength</a>]</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>The state in native IR code form. </p>

</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li>src/<a class="el" href="ir__Gree_8h_source.html">ir_Gree.h</a></li>
<li>src/<a class="el" href="ir__Gree_8cpp.html">ir_Gree.cpp</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.17
</small></address>
</body>
</html>
